//////////////////////////////////////////////////////////////////////////
#pragma once


//////////////////////////////////////////////////////////////////////////
// This file is generated from Config.hpp.in and will be rewritten if you
// regenerate using CMake.  You should perform any edits within the source
// file instead of this generated file.


//////////////////////////////////////////////////////////////////////////
// 32 or 64 bit target detection.  This uses a cross platform trick
// which does not require specific compiler/platform detections.
#define __STDC_LIMIT_MACROS
#include <stdint.h>

#if UINTPTR_MAX == 0xffffffff
#	define BUILDING_32BIT
#elif UINTPTR_MAX == 0xffffffffffffffff
#	define BUILDING_64BIT
#else
#	error Unknown architecture.
#endif


//////////////////////////////////////////////////////////////////////////
// Expose compiler detection.  Uses CMake to generate this which is
// easier to do than detecting compiler defines.
#define COMPILER_MSVC
/* #undef COMPILER_INTEL */
/* #undef COMPILER_GNU */
/* #undef COMPILER_CLANG */
/* #undef COMPILER_UNKNOWN */


//////////////////////////////////////////////////////////////////////////
// Intel SSE instruction set availability.
#define SIMD_SSE
#define SIMD_SSE_2
/* #undef SIMD_SSE_3 */
/* #undef SIMD_SSE_3_1 */
/* #undef SIMD_SSE_4 */
/* #undef SIMD_SSE_AVX */

// Power PC Altivec
/* #undef SIMD_ALTIVEC */

// ARM Neon.  NOTE: For iPhone/iPad this is not an absolute flag due to
// Xcode settings being able to target simulators without Neon support
// on the fly.
/* #undef SIMD_NEON */

//////////////////////////////////////////////////////////////////////////
// We need this include to detect ios device or simulator in order to
// disable NEON in the simulators.  Defines: TARGET_IPHONE_SIMULATOR
// when a simulator is targeted and/or TARGET_OS_IPHONE for the real device.
#ifdef __APPLE__
   #include <TargetConditionals.h>
#endif
